package com.wsoft.hr.pm.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.github.pagehelper.PageInfo;
import com.wsoft.hr.pm.entity.HrPmTemplateEntity;
import com.wsoft.hr.pm.query.template.TemplateListQuery;
import com.wsoft.hr.pm.query.template.TemplateSaveQuery;
import com.wsoft.hr.pm.query.template.TemplateStateQuery;
import com.wsoft.hr.pm.vo.template.TemplateVO;

/**
 * <p>
 * 考评 模板表 服务类
 * </p>
 *
 * @author Z001
 * @since 2025年02月24日 18:25:38
 */
public interface IHrPmTemplateService extends IService<HrPmTemplateEntity> {

    /**
     * 暂存模版
     * @param query
     * @param isCopy 是否是复制模板
     * @return
     */
    Long tempInsert(TemplateSaveQuery query,boolean isCopy);

    /**
     * 保存模板
     * @param query
     * @return
     */
    Long insert(TemplateSaveQuery query);

    /**
     * 修改模版状态
     * @param query
     * @return
     */
    boolean updateState(TemplateStateQuery query);

    /**
     * 删除模版
     * @param id
     * @return
     */
    boolean delete(Long id);

    /**
     * 模版分页
     * @param query
     * @return
     */
    PageInfo<HrPmTemplateEntity> listTemplate(TemplateListQuery query);

    /**
     * 获取模版详情
     * @param id
     * @return
     */
    TemplateVO getTemplateDetail(Long id);

    /**
     * 赋值模版
     * @param id
     * @return
     */
    boolean copyTemplate(Long id);
}
